Run-time Change Propagation Control

Patent pending

Summary

Short explanation

There are some changes that do not need to be propagated to absolutely all dependent files. For example, if you change a comment in a VHDL description of a logic circuit, you do not really have to repeat the simulation, synthesis, and layout. Similarly, if you change a comment in a C file, you may not want to relink and retest your program.

Designers are well aware of this and have always tried to avoid useless computation. But a manual process tends to be error prone. Mistakes have been made. Money has been lost.

A system like make, which uses exclusively timestamps, would react to any change to a file by invalidating all files that depend on the modified one.

VOV, instead, supports the notion of barriers to change propagation. These barriers are activated by "clever" tools. These tools, in addition to sending to the VOV server information about their inputs and outputs, can also send information about whether there are changes to one or more of their outputs. If an output does not change, then the barrier is activated and the change propagation stops.

Creating clever tools may sound difficult, but it is in fact rather easy. One of them, clevercopy is part of the VOV distribution. It is an important tool because any tool can be made to exhibit "clever" behavior by simply appending clevercopy to one or more of its outputs.


Back to index

© Copyright 1996 Runtime Design Automation